#define _CRT_SECURE_NO_WARNINGS 1
#pragma once

typedef int DataType;

typedef struct ListNode {
	struct ListNode* prev;
	struct ListNode* next;
	int DataType;
} ListNode;

typedef ListNode* LinkList;

void ListInit(LinkList);
ListNode* BuyListNode(DataType);
void ListPrint(LinkList);

void ListPushBack(LinkList, DataType);
void ListPushFront(LinkList, DataType);
void ListPopBack(LinkList);
void ListPopFront(LinkList);
void ListDelete(LinkList, DataType);
void ListInert(ListNode*, DataType);

ListNode* ListFind(LinkList, DataType);
